package com.red.star.wechat.data.entity;

import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import javax.persistence.Table;
import javax.persistence.Transient;
import java.util.Date;

/**
 * @author nofish.yan@gmail.com
 * @date 2018/7/12.
 * 客户信息操作(推送记录表)
 */
@Data
@Table(name = "t_customer_info_opt")
public class CustomerInfoOpt extends BaseEntity {

    /**
     * 操作管理员id
     */
    private Integer adminId;

    /**
     * 客户信息
     */
    private Integer customerInfoId;

    /**
     * 客户名称
     */
    @Transient
    private String customerName;

    /**
     * 客户手机号
     */
    @Transient
    private String mobile;

    /**
     * 操作的管理员
     */
    @Transient
    private String adminName;

    /**
     * 意向商场
     */
    @Transient
    private String mallName;

    /**
     * 意向品牌
     */
    @Transient
    private String brandName;

    /**
     *参与活动时间
     */
    @Transient
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date partTime;

    /**
     * 推送状态 0 未推送 1 已推送
     * */
//    @Transient
    private Integer pushStatus;

    /**
     * 用于显示操作时间
     * */
    @Transient
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date adminTime;

    /**
     * 用于查询操作开始时间
     * */
    @Transient
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date playStartTime;

    /**
     * 用于查询操作结束时间
     * */
    @Transient
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date playEndTime;

    /**
     * 用于查询参与活动开始时间
     * */
    @Transient
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date partStartTime;

    /**
     * 用于查询参与活动结束时间
     * */
    @Transient
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date partEndTime;

    @Transient
    private String mall;

    /**
     * 推送商场
     */
    private String pushMallCode;

    /**
     * 推送商户
     */
    private Integer pushMerchantId;

    /**
     * 意向商场code
     */
    private String intentMallCode;

    /**
     * 意向品牌商户ID
     */
    private Integer intentMerchantId;

    /**
     * 备注
     */
    private String remark;

    /**
     * 沟通状态
     * 1 意向强
     * 2 意向中
     * 3 意向弱
     * 4 无意向
     * 5 不在当地
     * 6 拒绝
     * 7 无效号码
     * 8 未开通语音服务
     * 9 稍后再联络
     * 10 无人接听
     */
    private String communicateStatus;

    /**
     * 姓名
     */
    private String name;

    /**
     * 所属活动id
     */
    private Integer activityId;

    /**
     * 省份
     */
    @Transient
    private String province;

    /**
     * 城市
     */
    @Transient
    private String city;

    /**
     * 区县
     */
    @Transient
    private String county;

    /**
     * 意向商场
     */

    private String intentMall;

    /**
     * 意向品牌
     */

    private String intentBrand;

    /**
     * 推送商场名
     */
    private String pushMallName;

    /**
     * 推送品牌
     */
    private String pushBrandName;

    /**
     * 所在活动
     */
    @Transient
    private String activityName;

    /**
     * 意向程度
     * 1:意向强
     * 2:意向中
     * 3:意向弱
     * 4:无意向
     * 5:待确定
     */
    @Transient
    private Integer intentLevel;

    /**
     * 拨打次数
     */
    @Transient
    private Integer num;

    /**
     * 拨打状态(是否有效)
     * 1:有效号码
     * 2:无效号码
     * 3:稍后联络
     * 4:拒绝
     * 5:关机
     * 6:无人接听
     */
    @Transient
    private Integer callStatus;

    /**
     * 系统反馈通话状态
     * 1:打通
     * 2:未打通
     */
    @Transient
    private Integer sysCallStatus;

    /**
     * 最终拨打状态
     */
    @Transient
    private Integer lastCallStatus;

    /**
     * 最终拨打时间
     */
    @Transient
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date lastCallTime;

    /**
     * 通话备注
     */
    @Transient
    private String callRemark;

    /**
     * 数据创建时间
     */
    @Transient
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date dataCreateTime;

    /**
     * 所在城市
     */
    @Transient
    private String liveCity;

    /**
     * 系统最终拨打状态
     */
    private Integer lastSysCallStatus;

    /**
     * 系统最终呼叫时间
     */
    private Date lastSysCallTime;

    private Integer pushType;
}
